Updated to new changes. Supports object literals as event objects (they're then copied to an actual instance)